[do not merge] dummy commit that shows CI doesn't check validity of html files #41
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
i had the suspicion so I created this PR.. turns out I was right, CI doesn't check validity of html files
running this locally you'll see a black window, dev console on chrome says:
but CI is green https://travis-ci.com/timotheecour/nim-plotly/builds/98718821
so we need something smarter to avoid regressions.
doesn't have to be 100% correct, but right now it doesn't check anything beyond nim code being valid :)
I don't know much about this topic, here's off top of my head:
approach 1: html-proofer (dead end IMO)
disappointing: doesn't catch lots of errors when i insert them (catches some, but IMO it's not suitable, unless there's some magic options i haven't seen)
approach 2: selenium
haven't tried
approach 3
for each test, make browser save image displayed on screen as png, compare against groundtruth; if it differs make test fail and save images generated, uploading it somewhere, then we check visually whether new result is ok, and update groundtruth images
approach 4 (maybe simplest, in combination w approach 3 maybe)
log js console and check logs show what we expect
https://stackoverflow.com/questions/19298420/log-javascript-console-into-a-log-file-with-firefox
[EDIT] approach 5 (workaround): generate 1 image containing all plots
this mitigates downsides of current approach which opens a ton of browser tabs, consumes lots of memory, and is harder to verify:
use #43 to generate subplots in a single window, and save the image
in CI, that image can be uploaded somewhere and a human can quickly verify if it looks ok